home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FM Towns: Free Software Collection 7
/
FM Towns Free Software Collection 7.iso
/
data
/
nyan_e2
/
nyane2re.plp
< prev
next >
Wrap
Text File
|
1993-11-30
|
8KB
|
405 lines
/********** 発言を参照して応答文書を作成する v1.04a用 **********/
%mark {| };
%foot {};
%Head {No};
var Seikei[30];
var seikei[3];
var Place[3];
var place[7];
var Center[1];
var center[6];
var Centernm[2];
var Left[1];
var left[6];
var Right[1];
var right[7];
var Kinsoku[1];
var kinsoku[7];
var Inyou[1];
var inyou[3];
var Chikan[210];
var chikan[210];
var Def[1];
var def[9];
%txf {txf};
%foo tmpdir|{\_foo.dat};
%bar tmpdir|{\_bar.dat};
%check{[NUM]
case(@mcheck,0,{mopen(NUM)});
};
%delmemo{
case(@mcheck,0,{mopen(1)}); mclose(3);
};
%exceptclose{
case(@mcheck,0,{mopen(5)},4,{mclose(1); mopen(5)},5,);
mclose(2);
OutAllMemo;
};
%SetHandle{
var Handle[20];
case(MesType,{OLD},{Handle:=@getchar(HLine,21,16)},
{NEW},{Handle:=@getchar(HLine,23,16)});
TrueHandle;
im(Handle);
};
%ok{
select({ 操作(清書or置換)は行われておりません},5,,{ OK? });
};
%button{
footnote({終了 前 次 題名置換 引用呼出参照清書設定},{b});
};
%Getnum{[LINE]
getchar(@getline(a,LINE,1),2,1);
};
%Getnum2{[LINE]
getchar(@getline(a,@noline(a)-LINE,1),2,1);
};
%Getline{[LINE]
head(@getline(a,LINE,1),{\n});
};
%Getline2{[LINE]
body(@getline(a,LINE,1),,{\n});
};
%SetIndex{
var fno[5];
%Wtype
@select({ このメッセージを送信予約しますか?}
,99999,{im({戻})},
{送信予約する}, {im({予})},
{送信予約しないが保存する}, {im({保})},
{再度,編集に戻る}, {im({戻})},
{保存しないで捨てる}, {im({捨})}
);
case(Wtype ,
{捨},{im(Wtype)},
{戻},{im(Wtype)},
,{
fno:=0;
mkdir(logd,{UP});
%nametop logd|{\UP\};
loop({ fno:=fno+1;
filechk(nametop|{MES}|fno|{.txt})
});
fno:=@getchar(fno|{ },1,3);
IndexLine:=Wtype|{ }|fno|{ }|IndexLine|{:}|Wtitle;
write(nametop|{INDEX.TXT},IndexLine);
im(nametop|{MES}|fno|{.txt});
})
};
%DelRes{
case(@nolmemo(5)!=0,
{Yes},{
case(@YesNo({ レスを破棄していいですか?}),
{Yes},{ exceptclose; im({No});
},{No},{OutAllMemo; im({Yes});
});
},{No},{exceptclose; im({No});
});
};
%end{
delfile(foo);
delfile(bar);
};
%SetTDoc2{
var Wtitle2[60];
Wtitle2:=@head(Wtitle,{\n});
loop({
Wtitle2:=@input({ 題名を入れてください},,Wtitle2);
case(@nochar(Wtitle2)>40,
{Yes},{ footnote({ 題名は, 全角20文字までです});
im({Yes});
},{No},{im({No});
});
});
case(Wtitle2<>{},{Yes},{Wtitle:=Wtitle2|{\n}});
button;
im({Yes});
};
%change2{
var moto[80];
var ato[80];
OutAllMemo;
case(@nolmemo(5)<>0,{Yes},{
moto:=@input({ 現文字列を入力してください});
case(moto<>{},{Yes},{
ato:=@input({ 新文字列を入力してください});
case(@mcheck<>0,{Yes},{mclose(1)});
mwrite(foo,5);
footnote({ ただいま変換中です});
command(txf|{ -i }|foo|{ -o }|bar|{ -n -e }|
moto|{ }|ato);
case(@filechk(bar),
{Yes},{ mclear(5);
mread(bar,5);
delfile(bar);
},{No},{
select({ TXFが用意されていません},1);
});
button;
});
});
mopen(5);
im({Yes});
};
%addfoot{
OutAllMemo;
madd(5,foot);
mopen(5);
};
%quote{
var cnt[4];
%MAX @nolmemo(4);
cnt:=1;
/* select({ 元発言を引用します},9999,{
},{ O K },{*/
OutAllMemo;
footnote({ ただいま元発言を転送中です});
madd(5,{});
loop({
madd(5,mark);
madd(5,@memo(4,cnt,1));
cnt:=cnt+1;
im(cnt<MAX);
});
button;
mopen(5);
/* },{ N G },{
});*/
};
%callfile2{
case( @filechk(foo),
{Yes},{
select({ 文書を操作(清書or置換)前の状態に戻します},
999,{im({No});
},{ O K },{
OutAllMemo;
case(@mcheck<>0,{Yes},{mclose(1)});
mclear(5);
mread(foo,5);
delfile(bar);
mopen(5);
},{ N G },{
});
},{No},{ok;
});
im({Yes});
};
%txtform2{
case(Seikei,{1},{seikei:={ -f}},{2},{seikei:={ -n}});
case(Place<>{},{Yes},{place:={ -l }|(Place)});
case(Center,{1},{center:={ -c }|Centernm},{2},{center:={}});
case(Left,{1},{left:={}},{2},{left:={ -ml 2}},
{3},{left:={ -ml 4}},{4},{left:={ -ml 6}});
case(Right,{1},{right:={}},{2},{right:={ -mr }|Place-2},
{3},{right:={ -mr }|Place-4},{4},{right:={ -mr }|Place-6});
case(Kinsoku,{1},{kinsoku:={}},{2},{kinsoku:={ -kl""}});
case(Inyou,{1},{inyou:={ -q}},{2},{inyou:={}});
case(Chikan<>{},{Yes},{chikan:={ }|Chikan});
case(Def,{1},{def:={ @arrange}},{2},{def:={}});
OutAllMemo;
case(@nolmemo(5)<>0,{Yes},{
mwrite(foo,5);
footnote({ ただいま変換中です});
command(txf|{ -a -i }|foo|{ -o }|bar|def|kinsoku|place|
center|left|right|inyou|seikei|{ -r }|chikan);
case(@filechk(bar),
{Yes},{ mclear(5);
mread(bar,5);
delfile(bar);
},{No},{
select({ TXFが用意されていません},1,);
});
button;
});
mopen(5);
im({Yes});
};
%config{
OutAllMemo;
%putdata{
%wm @mlast+1;
%putplp2{[HEAD,DATA]
madd(wm,HEAD|{:=}|@xc({7b})|DATA|@xc({7d})|{;\n});
};
loop({
case(@mcheck<>{0},
{Yes},{mclose(1); im({Yes});
},{No},{ im({No});
});
});
putplp2({Seikei},Seikei);
putplp2({Place},Place);
putplp2({Center},Center);
putplp2({Centernm},Centernm);
putplp2({Left},Left);
putplp2({Right},Right);
putplp2({Kinsoku},Kinsoku);
putplp2({Inyou},Inyou);
putplp2({Chikan},Chikan);
putplp2({Def},Def);
setcdir2(current);
mwrite({ARRNGSET.PLP},wm);
mopen(wm,0,21,639,459);
mclose(3);
OutAllMemo;
};
%Data{
Seikei:=@Getnum(2);
Place:=@Getline(3);
Center:=@Getnum(4);
Centernm:=@Getline(5);
Left:=@Getnum(6);
Right:=@Getnum(7);
Kinsoku:=@Getnum(8);
Inyou:=@Getnum(9);
Chikan:=@Getline2(10);
Def:=@Getnum2(2);
};
%a @plane(
{c 現在の設定は以下のとおりです\n}|
{c\n}|
{s 設定の処理 / 保 存 / 呼 出 \n}|
{r 文書整形 /する /しない\n}|
{t 最大桁数 /xxx\n}|
{r センタリング /する /しない\n}|
{t センタリング桁数 /xx\n}|
{r 左空白(全角) /0 /1 /2 /3\n}|
{r 右空白(全角) /0 /1 /2 /3\n}|
{r 禁足処理 /する /しない\n}|
{r 引用符処理 /する /しない\n}|
{t 置換 /\n}|
{r 定義ファイル /使う /使わない\n}|
{c\n}|
{s / 終 了 \n},
Seikei,Place,Center,Centernm,Left,Right,Kinsoku,Inyou,
Chikan,Def,
);
case(@Getnum(1),
{1},{case(@YesNo({ 設定ファイルに保存していいですか?}),
{Yes},{Data; putdata; })},
{2},{case(@YesNo({ 設定ファイルから呼出していいですか?}),
{Yes},{#ARRNGSET.PLP; })}
);
case(@Getnum2(1),{1},{
Data;
});
im({Yes});
};
%open{
case(DivDisp,
{ORI},{
mopen(4,0,21,639,220,{r});
mclose(1);
mopen(5,0,220,639,459,{w});
},{REV},{
mopen(4,0,260,639,459,{r});
mclose(1);
mopen(5,0,21,639,260,{w});
});
button;
};
%RES{
case( ( type={Forum} || type={Patio} ) && Head={Yes} && kind={},{Yes},{
case(action={RES},{Yes},{
%HLine @memo(4,1,1);
madd(5,{#}|@head(HLine,{/})|{ }|@SetHandle|{ さん\n\n});
});
});
/* madd(5,foot);*/
loop({
Edit:={Yes};
open;
loop({
loop({ waitx(9999); im(@xtype<100)});
case(@PFK(@xtype),
101,{ Edit:={No};
},102,{ case(TREE,
{Yes},{ loop({loadmsg2({-})});
},{No},{loop({loadmsg({-})});
});
open;
},103,{ case(TREE,
{Yes},{ loop({loadmsg2({+})});
},{No},{loop({loadmsg({+})});
});
open;
},105,{ SetTDoc2;
},106,{ change2;
},107,{ addfoot;
},108,{ quote;
},109,{ callfile2;
},110,{ refer;
open;
},111,{ txtform2;
},112,{ config;
}, ,{ OutAllMemo; open;
});
im(Edit);
});
case(@nolmemo(5)<>0,
{Yes},{
%OutFile @SetIndex;
case(OutFile,
{捨},{DelRes},
{戻},{OutAllMemo; im({Yes})},
,{exceptclose; mwrite(OutFile,5); im({No})}
);
},{No},{
exceptclose;
mset(5,{n});
im({No});
});
});
end;
};
setcdir2(current);
case(@filechk({ARRNGSET.PLP}),{No},{
write( {ARRNGSET.PLP},
{Seikei:={1};\n}|{Place:={76};\n}|{Center:={2};\n}|
{Centernm:={60};\n}|{Left:={1};\n}|{Right:={3};\n}|
{Kinsoku:={1};\n}|{Inyou:={1};\n}|
{Chikan:={-e 、 、 -e 。 。};\n}|{Def:={2};\n}
);
});
#ARRNGSET.PLP;
dispoff({Yes});
RES;
dispoff({No});
OutAllMemo;